package com.icinfo.cloud.provider.punish.ucase.caseregister.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.icinfo.cloud.common.core.Validator.BaseGroup;
import com.icinfo.cloud.common.core.page.BasePageRequest;
import com.icinfo.cloud.provider.punish.ucase.casemain.model.CasePartiesRecord;
import lombok.Data;

import javax.validation.Valid;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * 描述：重复立案分页请求参数
 * @author shishengyao
 * @description
 * @date 2022/7/11
 */
@Data
public class RepeatCaseInfoPageRequest extends BasePageRequest {
    /**
     * 案件id（前端修改的时候caseId不能为空）
     */
    private String caseId;
    /**
     * 案发时间
     **/
    @NotNull(message = "案发时间不能为空",groups = BaseGroup.Update.class)
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private String caseHappenTime;
    /**
     * 案件当事人个人信息列表
     */
    private List<CaseRegisterPartiesPersonInfoDto> partiesPersonInfoList;
    /**
     * 案件当事人法人信息列表
     */
    private List<CaseRegisterPartiesLegalInfoDto> partiesLegalInfoList;
    /**
     * 案由列表信息
     */
    @NotNull(message = "案由不能为空",groups = BaseGroup.Update.class)
    @Valid
    private List<CaseReasonInfoDto> caseReasonInfoList;

    /**
     * 【前端不用传】案件案由、当事人类型；1：单案由单当事人 2：多案由单当事人 3：单案由多当事人
     */
    private String casePartiesReasonType;
    /**
     * 【前端不用传】处置方式；1：合并处罚 2：分别处罚
     */
    private String handleType;
    /**
     * 【前端不用传】当事人信息列表
     */
    private List<CasePartiesRecord> casePartiesRecordList;

}
